{
 "metadata": {
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.9.0-final"
  },
  "orig_nbformat": 2,
  "kernelspec": {
   "name": "python3",
   "display_name": "Python 3.9.0 64-bit ('venv')",
   "metadata": {
    "interpreter": {
     "hash": "1ee744fdee3946c2af2bdc58f3796819357ed068616caa870dc20aacb53d0af6"
    }
   }
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2,
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 23,
   "metadata": {},
   "outputs": [],
   "source": [
    "from peewee import *\n",
    "\n",
    "db = SqliteDatabase('query.db')\n",
    "\n",
    "class BaseModel(Model):\n",
    "    class Meta:\n",
    "        database = db\n",
    "\n",
    "\n",
    "class User(BaseModel):\n",
    "    name =TextField()\n",
    "\n",
    "\n",
    "class Tweet(BaseModel):\n",
    "    user = ForeignKeyField(User, backref='tweets')\n",
    "    message = TextField()\n",
    "\n",
    "db.connect()\n",
    "db.create_tables([User, Tweet])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 38,
   "metadata": {},
   "outputs": [
    {
     "output_type": "execute_result",
     "data": {
      "text/plain": [
       "1"
      ]
     },
     "metadata": {},
     "execution_count": 38
    }
   ],
   "source": [
    "#1.新增记录\n",
    "#1.1.使用Model.create()方法,使用关键字参数传入\n",
    "user = User.create(name = 'watalo')\n",
    "user.save()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {},
   "outputs": [
    {
     "output_type": "execute_result",
     "data": {
      "text/plain": [
       "1"
      ]
     },
     "metadata": {},
     "execution_count": 53
    }
   ],
   "source": [
    "#1.1 -- 如果由外键 将实例作为参数传入\n",
    "tweet = Tweet.create(user = user, message = 'hi,gays. I am coming')\n",
    "tweet.save()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 68,
   "metadata": {},
   "outputs": [],
   "source": [
    "#1.1 -- 使用主键传入\n",
    "tweet = Tweet.create(user= 1, message = 'hi,too.') # 使用.create() 不需要调用.save()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 83,
   "metadata": {},
   "outputs": [
    {
     "output_type": "stream",
     "name": "stdout",
     "text": [
      "watalo\n",
      "donggua\n",
      "mihoutaotao\n",
      "mihoutaotao\n",
      "mihoutaotao\n",
      "mihoutaotao\n",
      "mihoutaotao\n",
      "mihoutaotao\n",
      "mihoutaotao\n",
      "mihoutaotao\n",
      "watalo\n",
      "watalo\n",
      "watalo\n",
      "watalo\n",
      "mihoutaotao\n",
      "watalo\n",
      "watalo\n",
      "aaaa\n",
      "bbbb\n",
      "cccc\n",
      "dddd\n",
      "eeee\n",
      "ffff\n",
      "aaaa\n",
      "bbbb\n",
      "cccc\n",
      "dddd\n",
      "eeee\n",
      "ffff\n",
      "aaaa\n",
      "bbbb\n",
      "cccc\n",
      "dddd\n",
      "eeee\n",
      "ffff\n",
      "aaaa\n",
      "bbbb\n",
      "cccc\n",
      "dddd\n",
      "eeee\n",
      "ffff\n",
      "aaaa\n",
      "bbbb\n",
      "cccc\n",
      "dddd\n",
      "eeee\n",
      "ffff\n",
      "aaaa\n",
      "bbbb\n",
      "cccc\n",
      "dddd\n",
      "eeee\n",
      "ffff\n",
      "aaaa\n",
      "bbbb\n",
      "cccc\n",
      "dddd\n",
      "eeee\n",
      "ffff\n",
      "aaaa\n",
      "bbbb\n",
      "cccc\n",
      "dddd\n",
      "eeee\n",
      "ffff\n",
      "aaaa\n",
      "bbbb\n",
      "cccc\n",
      "dddd\n",
      "eeee\n",
      "ffff\n",
      "aaaa1\n",
      "bbbb2\n",
      "cccc3\n",
      "dddd4\n",
      "eeee5\n",
      "ffff6\n",
      "aaaa1\n",
      "bbbb2\n",
      "cccc3\n",
      "dddd4\n",
      "eeee5\n",
      "ffff6\n",
      "aaaa1\n",
      "bbbb2\n",
      "cccc3\n",
      "dddd4\n",
      "eeee5\n",
      "ffff6\n",
      "aaaa1\n",
      "bbbb2\n",
      "cccc3\n",
      "dddd4\n",
      "eeee5\n",
      "ffff6\n",
      "aaaa1\n",
      "bbbb2\n",
      "cccc3\n",
      "dddd4\n",
      "eeee5\n",
      "ffff6\n",
      "aaaa1\n",
      "bbbb2\n",
      "cccc3\n",
      "dddd4\n",
      "eeee5\n",
      "ffff6\n",
      "aaaa1\n",
      "bbbb2\n",
      "cccc3\n",
      "dddd4\n",
      "eeee5\n",
      "ffff6\n",
      "aaaa1\n",
      "bbbb2\n",
      "cccc3\n",
      "dddd4\n",
      "eeee5\n",
      "ffff6\n",
      "aaaa1\n",
      "bbbb2\n",
      "cccc3\n",
      "dddd4\n",
      "eeee5\n",
      "ffff6\n",
      "aaaa11\n",
      "bbbb12\n",
      "cccc13\n",
      "dddd14\n",
      "eeee15\n",
      "ffff16\n",
      "ffff136\n",
      "ffff146\n",
      "ffff156\n",
      "ffff166\n",
      "ffff176\n",
      "ffff186\n",
      "ffff19\n",
      "ffff106\n",
      "ffff106\n",
      "ffff1006\n",
      "ffff106\n",
      "ffff106\n",
      "ffff165\n",
      "ffff1586\n",
      "ffff1236\n",
      "ffff12336\n",
      "ffff为16\n",
      "ffff1委任为6\n",
      "ffffdfa16\n",
      "fff123f16\n",
      "aaaa11\n",
      "bbbb12\n",
      "cccc13\n",
      "dddd14\n",
      "eeee15\n",
      "ffff16\n",
      "ffff136\n",
      "ffff146\n",
      "ffff156\n",
      "ffff166\n",
      "ffff176\n",
      "ffff186\n",
      "ffff19\n",
      "ffff106\n",
      "ffff106\n",
      "ffff1006\n",
      "ffff106\n",
      "ffff106\n",
      "ffff165\n",
      "ffff1586\n",
      "ffff1236\n",
      "ffff12336\n",
      "ffff为16\n",
      "ffff1委任为6\n",
      "ffffdfa16\n",
      "fff123f16\n",
      "aaaa11\n",
      "bbbb12\n",
      "cccc13\n",
      "dddd14\n",
      "eeee15\n",
      "ffff16\n",
      "ffff136\n",
      "ffff146\n",
      "ffff156\n",
      "ffff166\n",
      "ffff176\n",
      "ffff186\n",
      "ffff19\n",
      "ffff106\n",
      "ffff106\n",
      "ffff1006\n",
      "ffff106\n",
      "ffff106\n",
      "ffff165\n",
      "ffff1586\n",
      "ffff1236\n",
      "ffff12336\n",
      "ffff为16\n",
      "ffff1委任为6\n",
      "ffffdfa16\n",
      "fff123f16\n",
      "aaaa11\n",
      "bbbb12\n",
      "cccc13\n",
      "dddd14\n",
      "eeee15\n",
      "ffff16\n",
      "ffff136\n",
      "ffff146\n",
      "ffff156\n",
      "ffff166\n",
      "ffff176\n",
      "ffff186\n",
      "ffff19\n",
      "ffff106\n",
      "ffff106\n",
      "ffff1006\n",
      "ffff106\n",
      "ffff106\n",
      "ffff165\n",
      "ffff1586\n",
      "ffff1236\n",
      "ffff12336\n",
      "ffff为16\n",
      "ffff1委任为6\n",
      "ffffdfa16\n",
      "fff123f16\n",
      "aaaa11\n",
      "bbbb12\n",
      "cccc13\n",
      "dddd14\n",
      "eeee15\n",
      "ffff16\n",
      "ffff136\n",
      "ffff146\n",
      "ffff156\n",
      "ffff166\n",
      "ffff176\n",
      "ffff186\n",
      "ffff19\n",
      "ffff106\n",
      "ffff106\n",
      "ffff1006\n",
      "ffff106\n",
      "ffff106\n",
      "ffff165\n",
      "ffff1586\n",
      "ffff1236\n",
      "ffff12336\n",
      "ffff为16\n",
      "ffff1委任为6\n",
      "ffffdfa16\n",
      "fff123f16\n",
      "aaaa11\n",
      "bbbb12\n",
      "cccc13\n",
      "dddd14\n",
      "eeee15\n",
      "ffff16\n",
      "ffff136\n",
      "ffff146\n",
      "ffff156\n",
      "ffff166\n",
      "ffff176\n",
      "ffff186\n",
      "ffff19\n",
      "ffff106\n",
      "ffff106\n",
      "ffff1006\n",
      "ffff106\n",
      "ffff106\n",
      "ffff165\n",
      "ffff1586\n",
      "ffff1236\n",
      "ffff12336\n",
      "ffff为16\n",
      "ffff1委任为6\n",
      "ffffdfa16\n",
      "fff123f16\n",
      "aaaa11\n",
      "bbbb12\n",
      "cccc13\n",
      "dddd14\n",
      "eeee15\n",
      "ffff16\n",
      "ffff136\n",
      "ffff146\n",
      "ffff156\n",
      "ffff166\n",
      "ffff176\n",
      "ffff186\n",
      "ffff19\n",
      "ffff106\n",
      "ffff106\n",
      "ffff1006\n",
      "ffff106\n",
      "ffff106\n",
      "ffff165\n",
      "ffff1586\n",
      "ffff1236\n",
      "ffff12336\n",
      "ffff为16\n",
      "ffff1委任为6\n",
      "ffffdfa16\n",
      "fff123f16\n",
      "aaaa11\n",
      "bbbb12\n",
      "cccc13\n",
      "dddd14\n",
      "eeee15\n",
      "ffff16\n",
      "ffff136\n",
      "ffff146\n",
      "ffff156\n",
      "ffff166\n",
      "ffff176\n",
      "ffff186\n",
      "ffff19\n",
      "ffff106\n",
      "ffff106\n",
      "ffff1006\n",
      "ffff106\n",
      "ffff106\n",
      "ffff165\n",
      "ffff1586\n",
      "ffff1236\n",
      "ffff12336\n",
      "ffff为16\n",
      "ffff1委任为6\n",
      "ffffdfa16\n",
      "fff123f16\n",
      "aaaa11\n",
      "bbbb12\n",
      "cccc13\n",
      "dddd14\n",
      "eeee15\n",
      "ffff16\n",
      "ffff136\n",
      "ffff146\n",
      "ffff156\n",
      "ffff166\n",
      "ffff176\n",
      "ffff186\n",
      "ffff19\n",
      "ffff106\n",
      "ffff106\n",
      "ffff1006\n",
      "ffff106\n",
      "ffff106\n",
      "ffff165\n",
      "ffff1586\n",
      "ffff1236\n",
      "ffff12336\n",
      "ffff为16\n",
      "ffff1委任为6\n",
      "ffffdfa16\n",
      "fff123f16\n"
     ]
    }
   ],
   "source": [
    "query = User.select()\n",
    "for tweet in query:\n",
    "    print(tweet.name)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 98,
   "metadata": {},
   "outputs": [
    {
     "output_type": "execute_result",
     "data": {
      "text/plain": [
       "<peewee.ModelInsert at 0x240d1f63a00>"
      ]
     },
     "metadata": {},
     "execution_count": 98
    }
   ],
   "source": [
    "#1.1 不需要创建实例，只需要插入数据\n",
    "User.insert(name = 'gouer3')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 113,
   "metadata": {},
   "outputs": [
    {
     "output_type": "execute_result",
     "data": {
      "text/plain": [
       "1"
      ]
     },
     "metadata": {},
     "execution_count": 113
    }
   ],
   "source": [
    "#1.1 函数式插入数据\n",
    "user = User(name = 'donggua')\n",
    "user.save()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 127,
   "metadata": {},
   "outputs": [
    {
     "output_type": "execute_result",
     "data": {
      "text/plain": [
       "626"
      ]
     },
     "metadata": {},
     "execution_count": 127
    }
   ],
   "source": [
    "user.id"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 141,
   "metadata": {},
   "outputs": [
    {
     "output_type": "execute_result",
     "data": {
      "text/plain": [
       "1"
      ]
     },
     "metadata": {},
     "execution_count": 141
    }
   ],
   "source": [
    "#1.1 或者使用属性定义\n",
    "user = User()\n",
    "user.name = 'mihoutaotao'\n",
    "user.save()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 155,
   "metadata": {},
   "outputs": [],
   "source": [
    "data_sourece = [\r\n",
    "    {'name': 'aaaa'},\r\n",
    "    {'name': 'bbbb'},\r\n",
    "    {'name': 'cccc'},\r\n",
    "    {'name': 'dddd'},\r\n",
    "    {'name': 'eeee'},\r\n",
    "    {'name': 'ffff'},\n",
    "    ]\r\n",
    "\r\n",
    "#1.1 批量插入 循环\r\n",
    "for data_dict in data_sourece:\r\n",
    "    User.create(**data_dict)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 169,
   "metadata": {},
   "outputs": [],
   "source": [
    "#1.1 使用事务做上下文管理\n",
    "data_sourece = [\n",
    "    {'name': 'aaaa1'},\n",
    "    {'name': 'bbbb2'},\n",
    "    {'name': 'cccc3'},\n",
    "    {'name': 'dddd4'},\n",
    "    {'name': 'eeee5'},\n",
    "    {'name': 'ffff6'},\n",
    "    ]\n",
    "with db.atomic(): # 可以提速！！\n",
    "    for data_dict in data_sourece:\n",
    "        User.create(**data_dict)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 183,
   "metadata": {},
   "outputs": [
    {
     "output_type": "execute_result",
     "data": {
      "text/plain": [
       "26"
      ]
     },
     "metadata": {},
     "execution_count": 183
    }
   ],
   "source": [
    "data_sourece = [\n",
    "    {'name': 'aaaa11'},\n",
    "    {'name': 'bbbb12'},\n",
    "    {'name': 'cccc13'},\n",
    "    {'name': 'dddd14'},\n",
    "    {'name': 'eeee15'},\n",
    "    {'name': 'ffff16'},\n",
    "    {'name': 'ffff136'},\n",
    "    {'name': 'ffff146'},\n",
    "    {'name': 'ffff156'},\n",
    "    {'name': 'ffff166'},\n",
    "    {'name': 'ffff176'},\n",
    "    {'name': 'ffff186'},\n",
    "    {'name': 'ffff19'},\n",
    "    {'name': 'ffff106'},\n",
    "    {'name': 'ffff106'},\n",
    "    {'name': 'ffff1006'},\n",
    "    {'name': 'ffff106'},\n",
    "    {'name': 'ffff106'},\n",
    "    {'name': 'ffff165'},\n",
    "    {'name': 'ffff1586'},\n",
    "    {'name': 'ffff1236'},\n",
    "    {'name': 'ffff12336'},\n",
    "    {'name': 'ffff为16'},\n",
    "    {'name': 'ffff1委任为6'},\n",
    "    {'name': 'ffffdfa16'},\n",
    "    {'name': 'fff123f16'},\n",
    "    ]\n",
    "\n",
    "User.insert_many(data_sourece).execute()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "with db.atomic():\n",
    "    User.insert_many(data_sourece).execute()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 111,
   "metadata": {},
   "outputs": [],
   "source": [
    "data = [('2312'),('123123'),('123123123123')]\n",
    "with db.atomic():\n",
    "    User.insert_many(data, fields =[User.name,]).execute()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 125,
   "metadata": {},
   "outputs": [],
   "source": [
    "data = [('2312',),('123123',),('123123123123',)] # --> 这里有很明显的区别哦，我也不知道啥意思\n",
    "with db.atomic():\n",
    "    User.insert_many(data, fields =[User.name,]).execute()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 139,
   "metadata": {},
   "outputs": [],
   "source": [
    "data = [('233453412',),('1345123',),('1243534123',)] # \n",
    "with db.atomic():\n",
    "    User.insert_many(data, fields =['name']).execute() # --> 这里有也很明显的区别，我也不知道啥意思"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 153,
   "metadata": {},
   "outputs": [
    {
     "output_type": "execute_result",
     "data": {
      "text/plain": [
       "703"
      ]
     },
     "metadata": {},
     "execution_count": 153
    }
   ],
   "source": [
    "class User_back(BaseModel):\n",
    "    name = TextField()\n",
    "\n",
    "db.create_tables([User_back,]) # 新增一个表 不影响其他的表\n",
    "User_back.insert_from(User.select(User.name),fields=[User_back.name,]).execute()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 47,
   "metadata": {
    "tags": [
     "outputPrepend"
    ]
   },
   "outputs": [
    {
     "output_type": "stream",
     "name": "stdout",
     "text": [
      "f123f16 2\n",
      "fff123f16 1\n",
      "fff123f16 1\n",
      "fff123f16 2\n",
      "fff123f16 1\n",
      "fff123f16 1\n",
      "fff123f16 2\n",
      "fff123f16 1\n",
      "fff123f16 1\n",
      "fff123f16 2312\n",
      "fff123f16 123123\n",
      "fff123f16 123123123123\n",
      "fff123f16 2312\n",
      "fff123f16 123123\n",
      "fff123f16 123123123123\n",
      "fff123f16 233453412\n",
      "fff123f16 1345123\n",
      "fff123f16 1243534123\n",
      "2 watalo\n",
      "2 gouer\n",
      "2 donggua\n",
      "2 mihoutaotao\n",
      "2 gouer2\n",
      "2 aaaa\n",
      "2 bbbb\n",
      "2 cccc\n",
      "2 dddd\n",
      "2 eeee\n",
      "2 ffff\n",
      "2 aaaa1\n",
      "2 bbbb2\n",
      "2 cccc3\n",
      "2 dddd4\n",
      "2 eeee5\n",
      "2 ffff6\n",
      "2 aaaa11\n",
      "2 bbbb12\n",
      "2 cccc13\n",
      "2 dddd14\n",
      "2 eeee15\n",
      "2 ffff16\n",
      "2 ffff136\n",
      "2 ffff146\n",
      "2 ffff156\n",
      "2 ffff166\n",
      "2 ffff176\n",
      "2 ffff186\n",
      "2 ffff19\n",
      "2 ffff106\n",
      "2 ffff106\n",
      "2 ffff1006\n",
      "2 ffff106\n",
      "2 ffff106\n",
      "2 ffff165\n",
      "2 ffff1586\n",
      "2 ffff1236\n",
      "2 ffff12336\n",
      "2 ffff为16\n",
      "2 ffff1委任为6\n",
      "2 ffffdfa16\n",
      "2 fff123f16\n",
      "2 aaaa11\n",
      "2 bbbb12\n",
      "2 cccc13\n",
      "2 dddd14\n",
      "2 eeee15\n",
      "2 ffff16\n",
      "2 ffff136\n",
      "2 ffff146\n",
      "2 ffff156\n",
      "2 ffff166\n",
      "2 ffff176\n",
      "2 ffff186\n",
      "2 ffff19\n",
      "2 ffff106\n",
      "2 ffff106\n",
      "2 ffff1006\n",
      "2 ffff106\n",
      "2 ffff106\n",
      "2 ffff165\n",
      "2 ffff1586\n",
      "2 ffff1236\n",
      "2 ffff12336\n",
      "2 ffff为16\n",
      "2 ffff1委任为6\n",
      "2 ffffdfa16\n",
      "2 fff123f16\n",
      "2 2\n",
      "2 1\n",
      "2 1\n",
      "2 2\n",
      "2 1\n",
      "2 1\n",
      "2 2\n",
      "2 1\n",
      "2 1\n",
      "2 2312\n",
      "2 123123\n",
      "2 123123123123\n",
      "2 2312\n",
      "2 123123\n",
      "2 123123123123\n",
      "2 233453412\n",
      "2 1345123\n",
      "2 1243534123\n",
      "1 watalo\n",
      "1 gouer\n",
      "1 donggua\n",
      "1 mihoutaotao\n",
      "1 gouer2\n",
      "1 aaaa\n",
      "1 bbbb\n",
      "1 cccc\n",
      "1 dddd\n",
      "1 eeee\n",
      "1 ffff\n",
      "1 aaaa1\n",
      "1 bbbb2\n",
      "1 cccc3\n",
      "1 dddd4\n",
      "1 eeee5\n",
      "1 ffff6\n",
      "1 aaaa11\n",
      "1 bbbb12\n",
      "1 cccc13\n",
      "1 dddd14\n",
      "1 eeee15\n",
      "1 ffff16\n",
      "1 ffff136\n",
      "1 ffff146\n",
      "1 ffff156\n",
      "1 ffff166\n",
      "1 ffff176\n",
      "1 ffff186\n",
      "1 ffff19\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff1006\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff165\n",
      "1 ffff1586\n",
      "1 ffff1236\n",
      "1 ffff12336\n",
      "1 ffff为16\n",
      "1 ffff1委任为6\n",
      "1 ffffdfa16\n",
      "1 fff123f16\n",
      "1 aaaa11\n",
      "1 bbbb12\n",
      "1 cccc13\n",
      "1 dddd14\n",
      "1 eeee15\n",
      "1 ffff16\n",
      "1 ffff136\n",
      "1 ffff146\n",
      "1 ffff156\n",
      "1 ffff166\n",
      "1 ffff176\n",
      "1 ffff186\n",
      "1 ffff19\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff1006\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff165\n",
      "1 ffff1586\n",
      "1 ffff1236\n",
      "1 ffff12336\n",
      "1 ffff为16\n",
      "1 ffff1委任为6\n",
      "1 ffffdfa16\n",
      "1 fff123f16\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2312\n",
      "1 123123\n",
      "1 123123123123\n",
      "1 2312\n",
      "1 123123\n",
      "1 123123123123\n",
      "1 233453412\n",
      "1 1345123\n",
      "1 1243534123\n",
      "1 watalo\n",
      "1 gouer\n",
      "1 donggua\n",
      "1 mihoutaotao\n",
      "1 gouer2\n",
      "1 aaaa\n",
      "1 bbbb\n",
      "1 cccc\n",
      "1 dddd\n",
      "1 eeee\n",
      "1 ffff\n",
      "1 aaaa1\n",
      "1 bbbb2\n",
      "1 cccc3\n",
      "1 dddd4\n",
      "1 eeee5\n",
      "1 ffff6\n",
      "1 aaaa11\n",
      "1 bbbb12\n",
      "1 cccc13\n",
      "1 dddd14\n",
      "1 eeee15\n",
      "1 ffff16\n",
      "1 ffff136\n",
      "1 ffff146\n",
      "1 ffff156\n",
      "1 ffff166\n",
      "1 ffff176\n",
      "1 ffff186\n",
      "1 ffff19\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff1006\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff165\n",
      "1 ffff1586\n",
      "1 ffff1236\n",
      "1 ffff12336\n",
      "1 ffff为16\n",
      "1 ffff1委任为6\n",
      "1 ffffdfa16\n",
      "1 fff123f16\n",
      "1 aaaa11\n",
      "1 bbbb12\n",
      "1 cccc13\n",
      "1 dddd14\n",
      "1 eeee15\n",
      "1 ffff16\n",
      "1 ffff136\n",
      "1 ffff146\n",
      "1 ffff156\n",
      "1 ffff166\n",
      "1 ffff176\n",
      "1 ffff186\n",
      "1 ffff19\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff1006\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff165\n",
      "1 ffff1586\n",
      "1 ffff1236\n",
      "1 ffff12336\n",
      "1 ffff为16\n",
      "1 ffff1委任为6\n",
      "1 ffffdfa16\n",
      "1 fff123f16\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2312\n",
      "1 123123\n",
      "1 123123123123\n",
      "1 2312\n",
      "1 123123\n",
      "1 123123123123\n",
      "1 233453412\n",
      "1 1345123\n",
      "1 1243534123\n",
      "2 watalo\n",
      "2 gouer\n",
      "2 donggua\n",
      "2 mihoutaotao\n",
      "2 gouer2\n",
      "2 aaaa\n",
      "2 bbbb\n",
      "2 cccc\n",
      "2 dddd\n",
      "2 eeee\n",
      "2 ffff\n",
      "2 aaaa1\n",
      "2 bbbb2\n",
      "2 cccc3\n",
      "2 dddd4\n",
      "2 eeee5\n",
      "2 ffff6\n",
      "2 aaaa11\n",
      "2 bbbb12\n",
      "2 cccc13\n",
      "2 dddd14\n",
      "2 eeee15\n",
      "2 ffff16\n",
      "2 ffff136\n",
      "2 ffff146\n",
      "2 ffff156\n",
      "2 ffff166\n",
      "2 ffff176\n",
      "2 ffff186\n",
      "2 ffff19\n",
      "2 ffff106\n",
      "2 ffff106\n",
      "2 ffff1006\n",
      "2 ffff106\n",
      "2 ffff106\n",
      "2 ffff165\n",
      "2 ffff1586\n",
      "2 ffff1236\n",
      "2 ffff12336\n",
      "2 ffff为16\n",
      "2 ffff1委任为6\n",
      "2 ffffdfa16\n",
      "2 fff123f16\n",
      "2 aaaa11\n",
      "2 bbbb12\n",
      "2 cccc13\n",
      "2 dddd14\n",
      "2 eeee15\n",
      "2 ffff16\n",
      "2 ffff136\n",
      "2 ffff146\n",
      "2 ffff156\n",
      "2 ffff166\n",
      "2 ffff176\n",
      "2 ffff186\n",
      "2 ffff19\n",
      "2 ffff106\n",
      "2 ffff106\n",
      "2 ffff1006\n",
      "2 ffff106\n",
      "2 ffff106\n",
      "2 ffff165\n",
      "2 ffff1586\n",
      "2 ffff1236\n",
      "2 ffff12336\n",
      "2 ffff为16\n",
      "2 ffff1委任为6\n",
      "2 ffffdfa16\n",
      "2 fff123f16\n",
      "2 2\n",
      "2 1\n",
      "2 1\n",
      "2 2\n",
      "2 1\n",
      "2 1\n",
      "2 2\n",
      "2 1\n",
      "2 1\n",
      "2 2312\n",
      "2 123123\n",
      "2 123123123123\n",
      "2 2312\n",
      "2 123123\n",
      "2 123123123123\n",
      "2 233453412\n",
      "2 1345123\n",
      "2 1243534123\n",
      "1 watalo\n",
      "1 gouer\n",
      "1 donggua\n",
      "1 mihoutaotao\n",
      "1 gouer2\n",
      "1 aaaa\n",
      "1 bbbb\n",
      "1 cccc\n",
      "1 dddd\n",
      "1 eeee\n",
      "1 ffff\n",
      "1 aaaa1\n",
      "1 bbbb2\n",
      "1 cccc3\n",
      "1 dddd4\n",
      "1 eeee5\n",
      "1 ffff6\n",
      "1 aaaa11\n",
      "1 bbbb12\n",
      "1 cccc13\n",
      "1 dddd14\n",
      "1 eeee15\n",
      "1 ffff16\n",
      "1 ffff136\n",
      "1 ffff146\n",
      "1 ffff156\n",
      "1 ffff166\n",
      "1 ffff176\n",
      "1 ffff186\n",
      "1 ffff19\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff1006\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff165\n",
      "1 ffff1586\n",
      "1 ffff1236\n",
      "1 ffff12336\n",
      "1 ffff为16\n",
      "1 ffff1委任为6\n",
      "1 ffffdfa16\n",
      "1 fff123f16\n",
      "1 aaaa11\n",
      "1 bbbb12\n",
      "1 cccc13\n",
      "1 dddd14\n",
      "1 eeee15\n",
      "1 ffff16\n",
      "1 ffff136\n",
      "1 ffff146\n",
      "1 ffff156\n",
      "1 ffff166\n",
      "1 ffff176\n",
      "1 ffff186\n",
      "1 ffff19\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff1006\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff165\n",
      "1 ffff1586\n",
      "1 ffff1236\n",
      "1 ffff12336\n",
      "1 ffff为16\n",
      "1 ffff1委任为6\n",
      "1 ffffdfa16\n",
      "1 fff123f16\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2312\n",
      "1 123123\n",
      "1 123123123123\n",
      "1 2312\n",
      "1 123123\n",
      "1 123123123123\n",
      "1 233453412\n",
      "1 1345123\n",
      "1 1243534123\n",
      "1 watalo\n",
      "1 gouer\n",
      "1 donggua\n",
      "1 mihoutaotao\n",
      "1 gouer2\n",
      "1 aaaa\n",
      "1 bbbb\n",
      "1 cccc\n",
      "1 dddd\n",
      "1 eeee\n",
      "1 ffff\n",
      "1 aaaa1\n",
      "1 bbbb2\n",
      "1 cccc3\n",
      "1 dddd4\n",
      "1 eeee5\n",
      "1 ffff6\n",
      "1 aaaa11\n",
      "1 bbbb12\n",
      "1 cccc13\n",
      "1 dddd14\n",
      "1 eeee15\n",
      "1 ffff16\n",
      "1 ffff136\n",
      "1 ffff146\n",
      "1 ffff156\n",
      "1 ffff166\n",
      "1 ffff176\n",
      "1 ffff186\n",
      "1 ffff19\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff1006\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff165\n",
      "1 ffff1586\n",
      "1 ffff1236\n",
      "1 ffff12336\n",
      "1 ffff为16\n",
      "1 ffff1委任为6\n",
      "1 ffffdfa16\n",
      "1 fff123f16\n",
      "1 aaaa11\n",
      "1 bbbb12\n",
      "1 cccc13\n",
      "1 dddd14\n",
      "1 eeee15\n",
      "1 ffff16\n",
      "1 ffff136\n",
      "1 ffff146\n",
      "1 ffff156\n",
      "1 ffff166\n",
      "1 ffff176\n",
      "1 ffff186\n",
      "1 ffff19\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff1006\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff165\n",
      "1 ffff1586\n",
      "1 ffff1236\n",
      "1 ffff12336\n",
      "1 ffff为16\n",
      "1 ffff1委任为6\n",
      "1 ffffdfa16\n",
      "1 fff123f16\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2312\n",
      "1 123123\n",
      "1 123123123123\n",
      "1 2312\n",
      "1 123123\n",
      "1 123123123123\n",
      "1 233453412\n",
      "1 1345123\n",
      "1 1243534123\n",
      "2 watalo\n",
      "2 gouer\n",
      "2 donggua\n",
      "2 mihoutaotao\n",
      "2 gouer2\n",
      "2 aaaa\n",
      "2 bbbb\n",
      "2 cccc\n",
      "2 dddd\n",
      "2 eeee\n",
      "2 ffff\n",
      "2 aaaa1\n",
      "2 bbbb2\n",
      "2 cccc3\n",
      "2 dddd4\n",
      "2 eeee5\n",
      "2 ffff6\n",
      "2 aaaa11\n",
      "2 bbbb12\n",
      "2 cccc13\n",
      "2 dddd14\n",
      "2 eeee15\n",
      "2 ffff16\n",
      "2 ffff136\n",
      "2 ffff146\n",
      "2 ffff156\n",
      "2 ffff166\n",
      "2 ffff176\n",
      "2 ffff186\n",
      "2 ffff19\n",
      "2 ffff106\n",
      "2 ffff106\n",
      "2 ffff1006\n",
      "2 ffff106\n",
      "2 ffff106\n",
      "2 ffff165\n",
      "2 ffff1586\n",
      "2 ffff1236\n",
      "2 ffff12336\n",
      "2 ffff为16\n",
      "2 ffff1委任为6\n",
      "2 ffffdfa16\n",
      "2 fff123f16\n",
      "2 aaaa11\n",
      "2 bbbb12\n",
      "2 cccc13\n",
      "2 dddd14\n",
      "2 eeee15\n",
      "2 ffff16\n",
      "2 ffff136\n",
      "2 ffff146\n",
      "2 ffff156\n",
      "2 ffff166\n",
      "2 ffff176\n",
      "2 ffff186\n",
      "2 ffff19\n",
      "2 ffff106\n",
      "2 ffff106\n",
      "2 ffff1006\n",
      "2 ffff106\n",
      "2 ffff106\n",
      "2 ffff165\n",
      "2 ffff1586\n",
      "2 ffff1236\n",
      "2 ffff12336\n",
      "2 ffff为16\n",
      "2 ffff1委任为6\n",
      "2 ffffdfa16\n",
      "2 fff123f16\n",
      "2 2\n",
      "2 1\n",
      "2 1\n",
      "2 2\n",
      "2 1\n",
      "2 1\n",
      "2 2\n",
      "2 1\n",
      "2 1\n",
      "2 2312\n",
      "2 123123\n",
      "2 123123123123\n",
      "2 2312\n",
      "2 123123\n",
      "2 123123123123\n",
      "2 233453412\n",
      "2 1345123\n",
      "2 1243534123\n",
      "1 watalo\n",
      "1 gouer\n",
      "1 donggua\n",
      "1 mihoutaotao\n",
      "1 gouer2\n",
      "1 aaaa\n",
      "1 bbbb\n",
      "1 cccc\n",
      "1 dddd\n",
      "1 eeee\n",
      "1 ffff\n",
      "1 aaaa1\n",
      "1 bbbb2\n",
      "1 cccc3\n",
      "1 dddd4\n",
      "1 eeee5\n",
      "1 ffff6\n",
      "1 aaaa11\n",
      "1 bbbb12\n",
      "1 cccc13\n",
      "1 dddd14\n",
      "1 eeee15\n",
      "1 ffff16\n",
      "1 ffff136\n",
      "1 ffff146\n",
      "1 ffff156\n",
      "1 ffff166\n",
      "1 ffff176\n",
      "1 ffff186\n",
      "1 ffff19\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff1006\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff165\n",
      "1 ffff1586\n",
      "1 ffff1236\n",
      "1 ffff12336\n",
      "1 ffff为16\n",
      "1 ffff1委任为6\n",
      "1 ffffdfa16\n",
      "1 fff123f16\n",
      "1 aaaa11\n",
      "1 bbbb12\n",
      "1 cccc13\n",
      "1 dddd14\n",
      "1 eeee15\n",
      "1 ffff16\n",
      "1 ffff136\n",
      "1 ffff146\n",
      "1 ffff156\n",
      "1 ffff166\n",
      "1 ffff176\n",
      "1 ffff186\n",
      "1 ffff19\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff1006\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff165\n",
      "1 ffff1586\n",
      "1 ffff1236\n",
      "1 ffff12336\n",
      "1 ffff为16\n",
      "1 ffff1委任为6\n",
      "1 ffffdfa16\n",
      "1 fff123f16\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2312\n",
      "1 123123\n",
      "1 123123123123\n",
      "1 2312\n",
      "1 123123\n",
      "1 123123123123\n",
      "1 233453412\n",
      "1 1345123\n",
      "1 1243534123\n",
      "1 watalo\n",
      "1 gouer\n",
      "1 donggua\n",
      "1 mihoutaotao\n",
      "1 gouer2\n",
      "1 aaaa\n",
      "1 bbbb\n",
      "1 cccc\n",
      "1 dddd\n",
      "1 eeee\n",
      "1 ffff\n",
      "1 aaaa1\n",
      "1 bbbb2\n",
      "1 cccc3\n",
      "1 dddd4\n",
      "1 eeee5\n",
      "1 ffff6\n",
      "1 aaaa11\n",
      "1 bbbb12\n",
      "1 cccc13\n",
      "1 dddd14\n",
      "1 eeee15\n",
      "1 ffff16\n",
      "1 ffff136\n",
      "1 ffff146\n",
      "1 ffff156\n",
      "1 ffff166\n",
      "1 ffff176\n",
      "1 ffff186\n",
      "1 ffff19\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff1006\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff165\n",
      "1 ffff1586\n",
      "1 ffff1236\n",
      "1 ffff12336\n",
      "1 ffff为16\n",
      "1 ffff1委任为6\n",
      "1 ffffdfa16\n",
      "1 fff123f16\n",
      "1 aaaa11\n",
      "1 bbbb12\n",
      "1 cccc13\n",
      "1 dddd14\n",
      "1 eeee15\n",
      "1 ffff16\n",
      "1 ffff136\n",
      "1 ffff146\n",
      "1 ffff156\n",
      "1 ffff166\n",
      "1 ffff176\n",
      "1 ffff186\n",
      "1 ffff19\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff1006\n",
      "1 ffff106\n",
      "1 ffff106\n",
      "1 ffff165\n",
      "1 ffff1586\n",
      "1 ffff1236\n",
      "1 ffff12336\n",
      "1 ffff为16\n",
      "1 ffff1委任为6\n",
      "1 ffffdfa16\n",
      "1 fff123f16\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2\n",
      "1 1\n",
      "1 1\n",
      "1 2312\n",
      "1 123123\n",
      "1 123123123123\n",
      "1 2312\n",
      "1 123123\n",
      "1 123123123123\n",
      "1 233453412\n",
      "1 1345123\n",
      "1 1243534123\n",
      "2312 watalo\n",
      "2312 gouer\n",
      "2312 donggua\n",
      "2312 mihoutaotao\n",
      "2312 gouer2\n",
      "2312 aaaa\n",
      "2312 bbbb\n",
      "2312 cccc\n",
      "2312 dddd\n",
      "2312 eeee\n",
      "2312 ffff\n",
      "2312 aaaa1\n",
      "2312 bbbb2\n",
      "2312 cccc3\n",
      "2312 dddd4\n",
      "2312 eeee5\n",
      "2312 ffff6\n",
      "2312 aaaa11\n",
      "2312 bbbb12\n",
      "2312 cccc13\n",
      "2312 dddd14\n",
      "2312 eeee15\n",
      "2312 ffff16\n",
      "2312 ffff136\n",
      "2312 ffff146\n",
      "2312 ffff156\n",
      "2312 ffff166\n",
      "2312 ffff176\n",
      "2312 ffff186\n",
      "2312 ffff19\n",
      "2312 ffff106\n",
      "2312 ffff106\n",
      "2312 ffff1006\n",
      "2312 ffff106\n",
      "2312 ffff106\n",
      "2312 ffff165\n",
      "2312 ffff1586\n",
      "2312 ffff1236\n",
      "2312 ffff12336\n",
      "2312 ffff为16\n",
      "2312 ffff1委任为6\n",
      "2312 ffffdfa16\n",
      "2312 fff123f16\n",
      "2312 aaaa11\n",
      "2312 bbbb12\n",
      "2312 cccc13\n",
      "2312 dddd14\n",
      "2312 eeee15\n",
      "2312 ffff16\n",
      "2312 ffff136\n",
      "2312 ffff146\n",
      "2312 ffff156\n",
      "2312 ffff166\n",
      "2312 ffff176\n",
      "2312 ffff186\n",
      "2312 ffff19\n",
      "2312 ffff106\n",
      "2312 ffff106\n",
      "2312 ffff1006\n",
      "2312 ffff106\n",
      "2312 ffff106\n",
      "2312 ffff165\n",
      "2312 ffff1586\n",
      "2312 ffff1236\n",
      "2312 ffff12336\n",
      "2312 ffff为16\n",
      "2312 ffff1委任为6\n",
      "2312 ffffdfa16\n",
      "2312 fff123f16\n",
      "2312 2\n",
      "2312 1\n",
      "2312 1\n",
      "2312 2\n",
      "2312 1\n",
      "2312 1\n",
      "2312 2\n",
      "2312 1\n",
      "2312 1\n",
      "2312 2312\n",
      "2312 123123\n",
      "2312 123123123123\n",
      "2312 2312\n",
      "2312 123123\n",
      "2312 123123123123\n",
      "2312 233453412\n",
      "2312 1345123\n",
      "2312 1243534123\n",
      "123123 watalo\n",
      "123123 gouer\n",
      "123123 donggua\n",
      "123123 mihoutaotao\n",
      "123123 gouer2\n",
      "123123 aaaa\n",
      "123123 bbbb\n",
      "123123 cccc\n",
      "123123 dddd\n",
      "123123 eeee\n",
      "123123 ffff\n",
      "123123 aaaa1\n",
      "123123 bbbb2\n",
      "123123 cccc3\n",
      "123123 dddd4\n",
      "123123 eeee5\n",
      "123123 ffff6\n",
      "123123 aaaa11\n",
      "123123 bbbb12\n",
      "123123 cccc13\n",
      "123123 dddd14\n",
      "123123 eeee15\n",
      "123123 ffff16\n",
      "123123 ffff136\n",
      "123123 ffff146\n",
      "123123 ffff156\n",
      "123123 ffff166\n",
      "123123 ffff176\n",
      "123123 ffff186\n",
      "123123 ffff19\n",
      "123123 ffff106\n",
      "123123 ffff106\n",
      "123123 ffff1006\n",
      "123123 ffff106\n",
      "123123 ffff106\n",
      "123123 ffff165\n",
      "123123 ffff1586\n",
      "123123 ffff1236\n",
      "123123 ffff12336\n",
      "123123 ffff为16\n",
      "123123 ffff1委任为6\n",
      "123123 ffffdfa16\n",
      "123123 fff123f16\n",
      "123123 aaaa11\n",
      "123123 bbbb12\n",
      "123123 cccc13\n",
      "123123 dddd14\n",
      "123123 eeee15\n",
      "123123 ffff16\n",
      "123123 ffff136\n",
      "123123 ffff146\n",
      "123123 ffff156\n",
      "123123 ffff166\n",
      "123123 ffff176\n",
      "123123 ffff186\n",
      "123123 ffff19\n",
      "123123 ffff106\n",
      "123123 ffff106\n",
      "123123 ffff1006\n",
      "123123 ffff106\n",
      "123123 ffff106\n",
      "123123 ffff165\n",
      "123123 ffff1586\n",
      "123123 ffff1236\n",
      "123123 ffff12336\n",
      "123123 ffff为16\n",
      "123123 ffff1委任为6\n",
      "123123 ffffdfa16\n",
      "123123 fff123f16\n",
      "123123 2\n",
      "123123 1\n",
      "123123 1\n",
      "123123 2\n",
      "123123 1\n",
      "123123 1\n",
      "123123 2\n",
      "123123 1\n",
      "123123 1\n",
      "123123 2312\n",
      "123123 123123\n",
      "123123 123123123123\n",
      "123123 2312\n",
      "123123 123123\n",
      "123123 123123123123\n",
      "123123 233453412\n",
      "123123 1345123\n",
      "123123 1243534123\n",
      "123123123123 watalo\n",
      "123123123123 gouer\n",
      "123123123123 donggua\n",
      "123123123123 mihoutaotao\n",
      "123123123123 gouer2\n",
      "123123123123 aaaa\n",
      "123123123123 bbbb\n",
      "123123123123 cccc\n",
      "123123123123 dddd\n",
      "123123123123 eeee\n",
      "123123123123 ffff\n",
      "123123123123 aaaa1\n",
      "123123123123 bbbb2\n",
      "123123123123 cccc3\n",
      "123123123123 dddd4\n",
      "123123123123 eeee5\n",
      "123123123123 ffff6\n",
      "123123123123 aaaa11\n",
      "123123123123 bbbb12\n",
      "123123123123 cccc13\n",
      "123123123123 dddd14\n",
      "123123123123 eeee15\n",
      "123123123123 ffff16\n",
      "123123123123 ffff136\n",
      "123123123123 ffff146\n",
      "123123123123 ffff156\n",
      "123123123123 ffff166\n",
      "123123123123 ffff176\n",
      "123123123123 ffff186\n",
      "123123123123 ffff19\n",
      "123123123123 ffff106\n",
      "123123123123 ffff106\n",
      "123123123123 ffff1006\n",
      "123123123123 ffff106\n",
      "123123123123 ffff106\n",
      "123123123123 ffff165\n",
      "123123123123 ffff1586\n",
      "123123123123 ffff1236\n",
      "123123123123 ffff12336\n",
      "123123123123 ffff为16\n",
      "123123123123 ffff1委任为6\n",
      "123123123123 ffffdfa16\n",
      "123123123123 fff123f16\n",
      "123123123123 aaaa11\n",
      "123123123123 bbbb12\n",
      "123123123123 cccc13\n",
      "123123123123 dddd14\n",
      "123123123123 eeee15\n",
      "123123123123 ffff16\n",
      "123123123123 ffff136\n",
      "123123123123 ffff146\n",
      "123123123123 ffff156\n",
      "123123123123 ffff166\n",
      "123123123123 ffff176\n",
      "123123123123 ffff186\n",
      "123123123123 ffff19\n",
      "123123123123 ffff106\n",
      "123123123123 ffff106\n",
      "123123123123 ffff1006\n",
      "123123123123 ffff106\n",
      "123123123123 ffff106\n",
      "123123123123 ffff165\n",
      "123123123123 ffff1586\n",
      "123123123123 ffff1236\n",
      "123123123123 ffff12336\n",
      "123123123123 ffff为16\n",
      "123123123123 ffff1委任为6\n",
      "123123123123 ffffdfa16\n",
      "123123123123 fff123f16\n",
      "123123123123 2\n",
      "123123123123 1\n",
      "123123123123 1\n",
      "123123123123 2\n",
      "123123123123 1\n",
      "123123123123 1\n",
      "123123123123 2\n",
      "123123123123 1\n",
      "123123123123 1\n",
      "123123123123 2312\n",
      "123123123123 123123\n",
      "123123123123 123123123123\n",
      "123123123123 2312\n",
      "123123123123 123123\n",
      "123123123123 123123123123\n",
      "123123123123 233453412\n",
      "123123123123 1345123\n",
      "123123123123 1243534123\n",
      "2312 watalo\n",
      "2312 gouer\n",
      "2312 donggua\n",
      "2312 mihoutaotao\n",
      "2312 gouer2\n",
      "2312 aaaa\n",
      "2312 bbbb\n",
      "2312 cccc\n",
      "2312 dddd\n",
      "2312 eeee\n",
      "2312 ffff\n",
      "2312 aaaa1\n",
      "2312 bbbb2\n",
      "2312 cccc3\n",
      "2312 dddd4\n",
      "2312 eeee5\n",
      "2312 ffff6\n",
      "2312 aaaa11\n",
      "2312 bbbb12\n",
      "2312 cccc13\n",
      "2312 dddd14\n",
      "2312 eeee15\n",
      "2312 ffff16\n",
      "2312 ffff136\n",
      "2312 ffff146\n",
      "2312 ffff156\n",
      "2312 ffff166\n",
      "2312 ffff176\n",
      "2312 ffff186\n",
      "2312 ffff19\n",
      "2312 ffff106\n",
      "2312 ffff106\n",
      "2312 ffff1006\n",
      "2312 ffff106\n",
      "2312 ffff106\n",
      "2312 ffff165\n",
      "2312 ffff1586\n",
      "2312 ffff1236\n",
      "2312 ffff12336\n",
      "2312 ffff为16\n",
      "2312 ffff1委任为6\n",
      "2312 ffffdfa16\n",
      "2312 fff123f16\n",
      "2312 aaaa11\n",
      "2312 bbbb12\n",
      "2312 cccc13\n",
      "2312 dddd14\n",
      "2312 eeee15\n",
      "2312 ffff16\n",
      "2312 ffff136\n",
      "2312 ffff146\n",
      "2312 ffff156\n",
      "2312 ffff166\n",
      "2312 ffff176\n",
      "2312 ffff186\n",
      "2312 ffff19\n",
      "2312 ffff106\n",
      "2312 ffff106\n",
      "2312 ffff1006\n",
      "2312 ffff106\n",
      "2312 ffff106\n",
      "2312 ffff165\n",
      "2312 ffff1586\n",
      "2312 ffff1236\n",
      "2312 ffff12336\n",
      "2312 ffff为16\n",
      "2312 ffff1委任为6\n",
      "2312 ffffdfa16\n",
      "2312 fff123f16\n",
      "2312 2\n",
      "2312 1\n",
      "2312 1\n",
      "2312 2\n",
      "2312 1\n",
      "2312 1\n",
      "2312 2\n",
      "2312 1\n",
      "2312 1\n",
      "2312 2312\n",
      "2312 123123\n",
      "2312 123123123123\n",
      "2312 2312\n",
      "2312 123123\n",
      "2312 123123123123\n",
      "2312 233453412\n",
      "2312 1345123\n",
      "2312 1243534123\n",
      "123123 watalo\n",
      "123123 gouer\n",
      "123123 donggua\n",
      "123123 mihoutaotao\n",
      "123123 gouer2\n",
      "123123 aaaa\n",
      "123123 bbbb\n",
      "123123 cccc\n",
      "123123 dddd\n",
      "123123 eeee\n",
      "123123 ffff\n",
      "123123 aaaa1\n",
      "123123 bbbb2\n",
      "123123 cccc3\n",
      "123123 dddd4\n",
      "123123 eeee5\n",
      "123123 ffff6\n",
      "123123 aaaa11\n",
      "123123 bbbb12\n",
      "123123 cccc13\n",
      "123123 dddd14\n",
      "123123 eeee15\n",
      "123123 ffff16\n",
      "123123 ffff136\n",
      "123123 ffff146\n",
      "123123 ffff156\n",
      "123123 ffff166\n",
      "123123 ffff176\n",
      "123123 ffff186\n",
      "123123 ffff19\n",
      "123123 ffff106\n",
      "123123 ffff106\n",
      "123123 ffff1006\n",
      "123123 ffff106\n",
      "123123 ffff106\n",
      "123123 ffff165\n",
      "123123 ffff1586\n",
      "123123 ffff1236\n",
      "123123 ffff12336\n",
      "123123 ffff为16\n",
      "123123 ffff1委任为6\n",
      "123123 ffffdfa16\n",
      "123123 fff123f16\n",
      "123123 aaaa11\n",
      "123123 bbbb12\n",
      "123123 cccc13\n",
      "123123 dddd14\n",
      "123123 eeee15\n",
      "123123 ffff16\n",
      "123123 ffff136\n",
      "123123 ffff146\n",
      "123123 ffff156\n",
      "123123 ffff166\n",
      "123123 ffff176\n",
      "123123 ffff186\n",
      "123123 ffff19\n",
      "123123 ffff106\n",
      "123123 ffff106\n",
      "123123 ffff1006\n",
      "123123 ffff106\n",
      "123123 ffff106\n",
      "123123 ffff165\n",
      "123123 ffff1586\n",
      "123123 ffff1236\n",
      "123123 ffff12336\n",
      "123123 ffff为16\n",
      "123123 ffff1委任为6\n",
      "123123 ffffdfa16\n",
      "123123 fff123f16\n",
      "123123 2\n",
      "123123 1\n",
      "123123 1\n",
      "123123 2\n",
      "123123 1\n",
      "123123 1\n",
      "123123 2\n",
      "123123 1\n",
      "123123 1\n",
      "123123 2312\n",
      "123123 123123\n",
      "123123 123123123123\n",
      "123123 2312\n",
      "123123 123123\n",
      "123123 123123123123\n",
      "123123 233453412\n",
      "123123 1345123\n",
      "123123 1243534123\n",
      "123123123123 watalo\n",
      "123123123123 gouer\n",
      "123123123123 donggua\n",
      "123123123123 mihoutaotao\n",
      "123123123123 gouer2\n",
      "123123123123 aaaa\n",
      "123123123123 bbbb\n",
      "123123123123 cccc\n",
      "123123123123 dddd\n",
      "123123123123 eeee\n",
      "123123123123 ffff\n",
      "123123123123 aaaa1\n",
      "123123123123 bbbb2\n",
      "123123123123 cccc3\n",
      "123123123123 dddd4\n",
      "123123123123 eeee5\n",
      "123123123123 ffff6\n",
      "123123123123 aaaa11\n",
      "123123123123 bbbb12\n",
      "123123123123 cccc13\n",
      "123123123123 dddd14\n",
      "123123123123 eeee15\n",
      "123123123123 ffff16\n",
      "123123123123 ffff136\n",
      "123123123123 ffff146\n",
      "123123123123 ffff156\n",
      "123123123123 ffff166\n",
      "123123123123 ffff176\n",
      "123123123123 ffff186\n",
      "123123123123 ffff19\n",
      "123123123123 ffff106\n",
      "123123123123 ffff106\n",
      "123123123123 ffff1006\n",
      "123123123123 ffff106\n",
      "123123123123 ffff106\n",
      "123123123123 ffff165\n",
      "123123123123 ffff1586\n",
      "123123123123 ffff1236\n",
      "123123123123 ffff12336\n",
      "123123123123 ffff为16\n",
      "123123123123 ffff1委任为6\n",
      "123123123123 ffffdfa16\n",
      "123123123123 fff123f16\n",
      "123123123123 aaaa11\n",
      "123123123123 bbbb12\n",
      "123123123123 cccc13\n",
      "123123123123 dddd14\n",
      "123123123123 eeee15\n",
      "123123123123 ffff16\n",
      "123123123123 ffff136\n",
      "123123123123 ffff146\n",
      "123123123123 ffff156\n",
      "123123123123 ffff166\n",
      "123123123123 ffff176\n",
      "123123123123 ffff186\n",
      "123123123123 ffff19\n",
      "123123123123 ffff106\n",
      "123123123123 ffff106\n",
      "123123123123 ffff1006\n",
      "123123123123 ffff106\n",
      "123123123123 ffff106\n",
      "123123123123 ffff165\n",
      "123123123123 ffff1586\n",
      "123123123123 ffff1236\n",
      "123123123123 ffff12336\n",
      "123123123123 ffff为16\n",
      "123123123123 ffff1委任为6\n",
      "123123123123 ffffdfa16\n",
      "123123123123 fff123f16\n",
      "123123123123 2\n",
      "123123123123 1\n",
      "123123123123 1\n",
      "123123123123 2\n",
      "123123123123 1\n",
      "123123123123 1\n",
      "123123123123 2\n",
      "123123123123 1\n",
      "123123123123 1\n",
      "123123123123 2312\n",
      "123123123123 123123\n",
      "123123123123 123123123123\n",
      "123123123123 2312\n",
      "123123123123 123123\n",
      "123123123123 123123123123\n",
      "123123123123 233453412\n",
      "123123123123 1345123\n",
      "123123123123 1243534123\n",
      "233453412 watalo\n",
      "233453412 gouer\n",
      "233453412 donggua\n",
      "233453412 mihoutaotao\n",
      "233453412 gouer2\n",
      "233453412 aaaa\n",
      "233453412 bbbb\n",
      "233453412 cccc\n",
      "233453412 dddd\n",
      "233453412 eeee\n",
      "233453412 ffff\n",
      "233453412 aaaa1\n",
      "233453412 bbbb2\n",
      "233453412 cccc3\n",
      "233453412 dddd4\n",
      "233453412 eeee5\n",
      "233453412 ffff6\n",
      "233453412 aaaa11\n",
      "233453412 bbbb12\n",
      "233453412 cccc13\n",
      "233453412 dddd14\n",
      "233453412 eeee15\n",
      "233453412 ffff16\n",
      "233453412 ffff136\n",
      "233453412 ffff146\n",
      "233453412 ffff156\n",
      "233453412 ffff166\n",
      "233453412 ffff176\n",
      "233453412 ffff186\n",
      "233453412 ffff19\n",
      "233453412 ffff106\n",
      "233453412 ffff106\n",
      "233453412 ffff1006\n",
      "233453412 ffff106\n",
      "233453412 ffff106\n",
      "233453412 ffff165\n",
      "233453412 ffff1586\n",
      "233453412 ffff1236\n",
      "233453412 ffff12336\n",
      "233453412 ffff为16\n",
      "233453412 ffff1委任为6\n",
      "233453412 ffffdfa16\n",
      "233453412 fff123f16\n",
      "233453412 aaaa11\n",
      "233453412 bbbb12\n",
      "233453412 cccc13\n",
      "233453412 dddd14\n",
      "233453412 eeee15\n",
      "233453412 ffff16\n",
      "233453412 ffff136\n",
      "233453412 ffff146\n",
      "233453412 ffff156\n",
      "233453412 ffff166\n",
      "233453412 ffff176\n",
      "233453412 ffff186\n",
      "233453412 ffff19\n",
      "233453412 ffff106\n",
      "233453412 ffff106\n",
      "233453412 ffff1006\n",
      "233453412 ffff106\n",
      "233453412 ffff106\n",
      "233453412 ffff165\n",
      "233453412 ffff1586\n",
      "233453412 ffff1236\n",
      "233453412 ffff12336\n",
      "233453412 ffff为16\n",
      "233453412 ffff1委任为6\n",
      "233453412 ffffdfa16\n",
      "233453412 fff123f16\n",
      "233453412 2\n",
      "233453412 1\n",
      "233453412 1\n",
      "233453412 2\n",
      "233453412 1\n",
      "233453412 1\n",
      "233453412 2\n",
      "233453412 1\n",
      "233453412 1\n",
      "233453412 2312\n",
      "233453412 123123\n",
      "233453412 123123123123\n",
      "233453412 2312\n",
      "233453412 123123\n",
      "233453412 123123123123\n",
      "233453412 233453412\n",
      "233453412 1345123\n",
      "233453412 1243534123\n",
      "1345123 watalo\n",
      "1345123 gouer\n",
      "1345123 donggua\n",
      "1345123 mihoutaotao\n",
      "1345123 gouer2\n",
      "1345123 aaaa\n",
      "1345123 bbbb\n",
      "1345123 cccc\n",
      "1345123 dddd\n",
      "1345123 eeee\n",
      "1345123 ffff\n",
      "1345123 aaaa1\n",
      "1345123 bbbb2\n",
      "1345123 cccc3\n",
      "1345123 dddd4\n",
      "1345123 eeee5\n",
      "1345123 ffff6\n",
      "1345123 aaaa11\n",
      "1345123 bbbb12\n",
      "1345123 cccc13\n",
      "1345123 dddd14\n",
      "1345123 eeee15\n",
      "1345123 ffff16\n",
      "1345123 ffff136\n",
      "1345123 ffff146\n",
      "1345123 ffff156\n",
      "1345123 ffff166\n",
      "1345123 ffff176\n",
      "1345123 ffff186\n",
      "1345123 ffff19\n",
      "1345123 ffff106\n",
      "1345123 ffff106\n",
      "1345123 ffff1006\n",
      "1345123 ffff106\n",
      "1345123 ffff106\n",
      "1345123 ffff165\n",
      "1345123 ffff1586\n",
      "1345123 ffff1236\n",
      "1345123 ffff12336\n",
      "1345123 ffff为16\n",
      "1345123 ffff1委任为6\n",
      "1345123 ffffdfa16\n",
      "1345123 fff123f16\n",
      "1345123 aaaa11\n",
      "1345123 bbbb12\n",
      "1345123 cccc13\n",
      "1345123 dddd14\n",
      "1345123 eeee15\n",
      "1345123 ffff16\n",
      "1345123 ffff136\n",
      "1345123 ffff146\n",
      "1345123 ffff156\n",
      "1345123 ffff166\n",
      "1345123 ffff176\n",
      "1345123 ffff186\n",
      "1345123 ffff19\n",
      "1345123 ffff106\n",
      "1345123 ffff106\n",
      "1345123 ffff1006\n",
      "1345123 ffff106\n",
      "1345123 ffff106\n",
      "1345123 ffff165\n",
      "1345123 ffff1586\n",
      "1345123 ffff1236\n",
      "1345123 ffff12336\n",
      "1345123 ffff为16\n",
      "1345123 ffff1委任为6\n",
      "1345123 ffffdfa16\n",
      "1345123 fff123f16\n",
      "1345123 2\n",
      "1345123 1\n",
      "1345123 1\n",
      "1345123 2\n",
      "1345123 1\n",
      "1345123 1\n",
      "1345123 2\n",
      "1345123 1\n",
      "1345123 1\n",
      "1345123 2312\n",
      "1345123 123123\n",
      "1345123 123123123123\n",
      "1345123 2312\n",
      "1345123 123123\n",
      "1345123 123123123123\n",
      "1345123 233453412\n",
      "1345123 1345123\n",
      "1345123 1243534123\n",
      "1243534123 watalo\n",
      "1243534123 gouer\n",
      "1243534123 donggua\n",
      "1243534123 mihoutaotao\n",
      "1243534123 gouer2\n",
      "1243534123 aaaa\n",
      "1243534123 bbbb\n",
      "1243534123 cccc\n",
      "1243534123 dddd\n",
      "1243534123 eeee\n",
      "1243534123 ffff\n",
      "1243534123 aaaa1\n",
      "1243534123 bbbb2\n",
      "1243534123 cccc3\n",
      "1243534123 dddd4\n",
      "1243534123 eeee5\n",
      "1243534123 ffff6\n",
      "1243534123 aaaa11\n",
      "1243534123 bbbb12\n",
      "1243534123 cccc13\n",
      "1243534123 dddd14\n",
      "1243534123 eeee15\n",
      "1243534123 ffff16\n",
      "1243534123 ffff136\n",
      "1243534123 ffff146\n",
      "1243534123 ffff156\n",
      "1243534123 ffff166\n",
      "1243534123 ffff176\n",
      "1243534123 ffff186\n",
      "1243534123 ffff19\n",
      "1243534123 ffff106\n",
      "1243534123 ffff106\n",
      "1243534123 ffff1006\n",
      "1243534123 ffff106\n",
      "1243534123 ffff106\n",
      "1243534123 ffff165\n",
      "1243534123 ffff1586\n",
      "1243534123 ffff1236\n",
      "1243534123 ffff12336\n",
      "1243534123 ffff为16\n",
      "1243534123 ffff1委任为6\n",
      "1243534123 ffffdfa16\n",
      "1243534123 fff123f16\n",
      "1243534123 aaaa11\n",
      "1243534123 bbbb12\n",
      "1243534123 cccc13\n",
      "1243534123 dddd14\n",
      "1243534123 eeee15\n",
      "1243534123 ffff16\n",
      "1243534123 ffff136\n",
      "1243534123 ffff146\n",
      "1243534123 ffff156\n",
      "1243534123 ffff166\n",
      "1243534123 ffff176\n",
      "1243534123 ffff186\n",
      "1243534123 ffff19\n",
      "1243534123 ffff106\n",
      "1243534123 ffff106\n",
      "1243534123 ffff1006\n",
      "1243534123 ffff106\n",
      "1243534123 ffff106\n",
      "1243534123 ffff165\n",
      "1243534123 ffff1586\n",
      "1243534123 ffff1236\n",
      "1243534123 ffff12336\n",
      "1243534123 ffff为16\n",
      "1243534123 ffff1委任为6\n",
      "1243534123 ffffdfa16\n",
      "1243534123 fff123f16\n",
      "1243534123 2\n",
      "1243534123 1\n",
      "1243534123 1\n",
      "1243534123 2\n",
      "1243534123 1\n",
      "1243534123 1\n",
      "1243534123 2\n",
      "1243534123 1\n",
      "1243534123 1\n",
      "1243534123 2312\n",
      "1243534123 123123\n",
      "1243534123 123123123123\n",
      "1243534123 2312\n",
      "1243534123 123123\n",
      "1243534123 123123123123\n",
      "1243534123 233453412\n",
      "1243534123 1345123\n",
      "1243534123 1243534123\n"
     ]
    }
   ],
   "source": []
  },
  {
   "cell_type": "code",
   "execution_count": 208,
   "metadata": {},
   "outputs": [],
   "source": [
    "# 更新信息\n",
    "from peewee import *\n",
    "\n",
    "db = SqliteDatabase('query.db')\n",
    "\n",
    "class BaseModel(Model):\n",
    "    class Meta:\n",
    "        database = db\n",
    "\n",
    "class BalanceSheet(BaseModel):\n",
    "    name = TextField() \n",
    "    date = DateField()\n",
    "    total_asset = FloatField()\n",
    "\n",
    "db.create_tables([BalanceSheet,])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 209,
   "metadata": {},
   "outputs": [
    {
     "output_type": "execute_result",
     "data": {
      "text/plain": [
       "<BalanceSheet: 1>"
      ]
     },
     "metadata": {},
     "execution_count": 209
    }
   ],
   "source": [
    "from datetime import date\n",
    "BalanceSheet.create(name = 'MIT', date = date(2020, 12, 31), total_asset = '300000000')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 211,
   "metadata": {},
   "outputs": [],
   "source": [
    "\n",
    "# query = BalanceSheet.update(total_debt = 100000000).where(BalanceSheet.name == 'MIT')\n",
    "# query.execute()\n",
    "\n",
    "from playhouse.migrate import *\n",
    "migrator = SqliteMigrator(db)\n",
    "with db.atomic():\n",
    "    migrate(migrator.add_column('BalanceSheet','total_debt', FloatField(default='1000')))\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 212,
   "metadata": {},
   "outputs": [
    {
     "output_type": "stream",
     "name": "stdout",
     "text": [
      "1\n"
     ]
    }
   ],
   "source": [
    "query = BalanceSheet.select()\n",
    "\n",
    "for q in query:\n",
    "    print(q)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 213,
   "metadata": {},
   "outputs": [
    {
     "output_type": "execute_result",
     "data": {
      "text/plain": [
       "300000000.0"
      ]
     },
     "metadata": {},
     "execution_count": 213
    }
   ],
   "source": [
    "q.total_asset"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 214,
   "metadata": {},
   "outputs": [
    {
     "output_type": "error",
     "ename": "AttributeError",
     "evalue": "'BalanceSheet' object has no attribute 'total_debt'",
     "traceback": [
      "\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
      "\u001b[1;31mAttributeError\u001b[0m                            Traceback (most recent call last)",
      "\u001b[1;32m<ipython-input-214-828e64445572>\u001b[0m in \u001b[0;36m<module>\u001b[1;34m\u001b[0m\n\u001b[1;32m----> 1\u001b[1;33m \u001b[0mq\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mtotal_debt\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
      "\u001b[1;31mAttributeError\u001b[0m: 'BalanceSheet' object has no attribute 'total_debt'"
     ]
    }
   ],
   "source": [
    "q.total_debt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [
    {
     "output_type": "stream",
     "name": "stdout",
     "text": [
      "18.1%\n18.1%\n"
     ]
    }
   ],
   "source": [
    "s1 = 72\n",
    "s2 = 85\n",
    "r = (s2-s1)/s1\n",
    "# 推荐用法\n",
    "print('{:.1%}'.format(r))\n",
    "# 另一个方法\n",
    "print('%.1f%%' % (r*100))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "metadata": {},
   "outputs": [],
   "source": [
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "metadata": {},
   "outputs": [
    {
     "output_type": "stream",
     "name": "stdout",
     "text": [
      "18.1%\n18.1%\n"
     ]
    }
   ],
   "source": [
    "s1 = 72\n",
    "s2 = 85\n",
    "r = (s2-s1)/s1\n",
    "# 推荐用法\n",
    "print('{:.1%}'.format(r))\n",
    "# 另一个方法\n",
    "print('%.1f%%' % (r*100))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ]
}